Browser Tab Management

ABSTRACT

The management of tabs in browser applications may be at least partially automated. In a described implementation, a link present in browser content information may include a link property indicating that the new browser content information targeted by the link is to be opened in a new tab. A browser application can therefore automatically launch a new tab without a user request. In another described implementation, a new travelogue created for a new tab may be initially populated with an historical entry that points to spawning browser content information and identifies the originating tab. When a user attempts to move backward from an initial page of the new tab, a browser application can therefore automatically redisplay the spawning browser content information at the originating tab.

PRIORITY CLAIM

This application is a continuation of application Ser. No. 11/222,424(MS1-2697US), filed Jul. 12, 2005, which is incorporated herein byreference in its entirety.

BACKGROUND

Application windows, including windows for browser applications, aretypically managed by an operating system (OS) in graphical userinterface (GUI) environments. Traditionally, each page of browsercontent information is represented by and accessible via a link on oneor more other pages. When a user selects a link on a given page, thebrowser application retrieves the selected page and displays it in placeof the given page in the browser application window.

Recently, tabbed browsing has been developed. Tabs are used in browserapplications to enable multiple pages to be simultaneously opened withina single browser application window. The user is empowered to open a newtab within a browser application window. Consequently, the new tab maybe used to display a new page of browser content information withoutoverwriting the existing browser content information already displayedin a current tab.

SUMMARY

The management of tabs in browser applications may be at least partiallyautomated. In a described implementation, a link present in browsercontent information may include a link property indicating that the newbrowser content information targeted by the link is to be opened in anew tab. A browser application can therefore automatically launch a newtab without a user request. In another described implementation, a newtravelogue created for a new tab may be initially populated with anhistorical entry that points to spawning browser content information andidentifies the originating tab. When a user attempts to move backwardfrom an initial page of the new tab, a browser application can thereforeautomatically redisplay the spawning browser content information at theoriginating tab.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter. Moreover, other method, system, scheme, apparatus, device,media, procedure, API, arrangement, etc. implementations are describedherein.

BRIEF DESCRIPTION OF THE DRAWINGS

The same numbers are used throughout the drawings to reference likeand/or corresponding aspects, features, and components.

FIG. 1 is a block diagram illustrating a general example environment inwhich a browser application may operate to provide browser content to auser.

FIG. 2 illustrates a browser application window displaying browsercontent in a tabbed format.

FIG. 3 is a flow diagram that illustrates an example of a first methodfor managing browser tabs.

FIG. 4(A) illustrates an approach to browser travelogues in a no tabscenario.

FIG. 4(B) illustrates an approach to browser travelogues in auser-created tab scenario.

FIG. 4(C) illustrates an approach to browser travelogues in anapplication-created tab scenario.

FIG. 5 is a flow diagram that illustrates an example of a second methodfor managing browser tabs.

DETAILED DESCRIPTION

FIG. 1 is a block diagram illustrating a general example environment 100in which a browser application 102 may operate to provide browsercontent 104 to a user. As illustrated, example environment 100 includesa network 106 and a network site 108. By way of example only, network106 may be the internet, an intranet, some other public or privatenetwork, some combination thereof, and so forth. Network site 108 may bea private corporate server, a web site, a public commercial server, andso forth. Network site 108 includes remote browser content 104(R).

Environment 100 also includes a processing device 110 and a displaydevice 112. By way of example only, processing device 110 may be acomputer, a set-top box/cable device, a wireless device (e.g., a mobilephone or a personal digital assistant (PDA)), a gaming device, and soforth. Also, display device 112 may be a monitor, a separate orintegrated screen, a projector, a printer, and so forth. As illustrated,device 110 includes one or more input/output (I/O) interfaces 114, atleast one processor 116, and one or more media 118. Although notspecifically illustrated, device 110 may also include other components.

In a described implementation, I/O interfaces 114 include a networkinterface (e.g., a network card and/or a modem) for communicating withnetwork site 108 via network 106 and a display device interface (e.g., agraphics driver and/or a graphics card) for providing browser content104(D) to display device 112. Processor 116 is capable of executing,performing, and/or otherwise effectuating processor-executableinstructions. Media 118 is comprised of one or more processor-accessiblemedia. In other words, media 118 may include processor-executableinstructions that are executable by processor 116 to effectuate theperformance of functions by device 110.

Thus, realizations for browser tab management may be described in thegeneral context of processor-executable instructions. Generally,processor-executable instructions include routines, programs, coding,modules, protocols, objects, interfaces, components, metadata anddefinitions thereof, data structures, etc. that perform and/or enableparticular tasks and/or implement particular abstract data types.Processor-executable instructions may be located in separate storagemedia, executed by different processors, and/or propagated over orextant on various transmission media.

Processor(s) 116 may be implemented using any applicableprocessing-capable technology. Media 118 may be any available media thatis accessible by device 110. It includes volatile and non-volatilemedia, removable and non-removable media, and storage and transmissionmedia (e.g., wireless or wired communication channels). Media 118comprises local browser content 104(L) and browser application 102.

Browser content 104(R) and 104(L), which are displayed as browsercontent 104(D), may be any of many different types of information.Examples of such information include: a web page, a file (e.g., a wordprocessing document, a general public document, a multi-media file,etc.), a hypertext markup language (HTML) document, and so forth. By wayof example only, a “page” may be a representation of N commands, N setsof items, and/or N visualizations/views on top of all of them. Examplesof pages include a webpage, a folder being browsed on a hard drive, avideo game, and so forth. Thus, browser content 104 may include text,images, icons, audio and/or visual material, metadata, some combinationthereof, and so forth.

Browser application 102 may be any application that is capable ofproviding, retrieving, presenting, etc. browser content 104. An exampleof a browser application 102 is Microsoft Internet Explorer® fromMicrosoft® Corporation of Redmond, Wash. In operation, browserapplication 102 is capable of retrieving remote browser content 104(R)and/or local browser content 104(L) from network site 108 and/or media118, respectively.

FIG. 2 illustrates a browser application window 202 displaying browsercontent 104 in a tabbed format. When executing, browser application 102(of FIG. 1) generates a browser application window 202. As illustrated,browser application window 202 includes menu(s) 204 and tool bar(s) 206.However, browser application window 202 may alternatively be arrangeddifferently (e.g., with additional or fewer window items, in a differentlayout, etc.). Browser application window 202 also includes a contentarea 214.

Content area 214 includes one or more tabs 208. As illustrated, multipletabs 208 are included as part of content area 214. Specifically, “n”tabs 208(1), 208(2), 208(3) . . . 208(n) are illustrated. However, none,one, or multiple tabs 208 may be in use by a browser application 102within a content area 214 at any given moment.

Generally, each respective tab 208(n) includes (e.g., displays,corresponds to, etc.) respective browser content information 104(n). Tab3 208(3), which is “on top” or on the top layer and therefore visible,includes browser content 104(3). Thus, although not specificallyillustrated, tab 1 208(1) includes browser content 104(1), tab 2 208(2)includes browser content 104(2), and tab n 208(n) includes browsercontent 104(n).

As illustrated, browser content 104(3) includes a link 210. Link 210 maybe visually represented in tab 3 208(3) as part of browser content104(3) to a user as text, as an icon, as an image, as an animation, assome combination thereof, and so forth. Link 210 includes/is associatedwith at least one link property 212. Example link properties 212 includea target address 212A, an open-in-new-tab indicator 212B, and other data212C. Link properties 212 are not usually visible to the user, but theyare present in browser content 104(3) and accessible to browserapplication 102.

Target address 212A is the locator (e.g., network, memory, and/or driveaddress) of the browser content that is targeted by link 210. Forexample, target address 212A may be an internet protocol (IP) address, auniform resource locator (URL), and so forth. Open-in-new-tab indicator212B is an indication to browser application 102 that the browsercontent targeted by link 210 is to be opened within a new tab 208.Hence, if an open-in-new-tab indicator 212B is present as a linkproperty 212 of link 210, browser application 102 opens a new tab 208(e.g., a tab 208(n+1) (not shown)), locates the new tab 208(n+1) on top,and loads the targeted browser content in the new tab 208(n+1). Linkproperties 212 may also optionally include other data properties asindicated by the link property entry other data 212C.

Browser content 104(3) of tab 3 208(3) also includes anonly-one-instance property 216. Only-one-instance property 216 may be,for example, a page-type property for a web page. However,only-one-instance property 216 may alternatively be realizeddifferently. An only-one-instance property 216 may be relevant whenmultiple versions of browser content 104 might cause the user confusion,when multiple versions of browser content 104 is inherently nonsensical,when multiple versions of browser content 104 may result in theactivation or ratification of multiple instances of a commercial orfinancial transaction that is intended to be executed once, and soforth.

Generally, such a browser content property as only-one-instance property216 is not readily visible to a viewing user. Alternatively,only-one-instance property 216 may be made visible to a user as text, asan icon, as an image, and so forth. Such a visible indication may beincluded as part of content area 214 (e.g., within tab 3 208(3) as partof browser content 104(3)), as part of browser application window 202,and so forth.

Alternative embodiments for only-one-instance property 216 may beimplemented. For example, only-one-instance property 216 may beautomatically limited to a single browser application window 202. Inother words, the existence of an only-one-instance property 216 inbrowser content 104 may only prevent a duplicate version of the browsercontent 104 from being loaded into the browser application window 202that already includes a version of the browser content 104. Thus, inthis example, a duplicate version of the browser content 104 having anonly-one-instance property 216 may still be loaded into a differentbrowser application window 202. Generally, an only-one-instance property216 associated with browser content 104 may by default be applieduniversally across all open browser application windows 202 or may bydefault be limited to only individual browser application windows 202.

As another alternative, each only-one-instance property 216 mayaffirmatively indicate whether the only-one-instance effect is to beapplied across multiple (including all) browser application windows 202or be limited to only each single browser application window 202. Inother words, an only-one-instance property 216 may indicate that thecorresponding browser content 104 is limited to only one tab for allbrowser application windows 202 or only limited to one tab within eachbrowser application window 202.

FIG. 3 is a flow diagram 300 that illustrates an example of a firstmethod for managing browser tabs. Flow diagram 300 includes eight (8)blocks 302-316. Although the actions of flow diagram 300 may beperformed in other environments and with a variety of hardware andsoftware combinations, FIGS. 1 and 2 are used in particular toillustrate certain aspects and examples of the method.

By way of example only, the actions of flow diagram 300 may be performedby a browser application 102 in the context of browser content 104(3).Performance of the actions by browser application 102 may be facilitatedby interaction with an OS of device 110. Flow diagram 300 may begin whena user activates a link (e.g., link 210).

At block 302, it is detected if a user launched a new tab. For example,it may be detected that a user actively launched a new tab by inputtinga “new tab” instruction with respect to an activated link. Such a newtab instruction may be activated, for example, by clicking an icon oftool bar 206, by typing a keyboard command, by right-clicking on link210 and selecting an “open in new tab” option, and so forth. If the userlaunched a new tab, then flow diagram 300 continues at block 308.

Otherwise, at block 304, it is ascertained if a link property of theactivated link indicates that a new tab is to be opened. For example, itmay be ascertained if link 210 includes an open-in-new-tab indicator212B. If not, then at block 306 the targeted browser content 104 isloaded into a current tab. If, on the other hand, a link property existsindicating that a new tab is to be opened, then flow diagram 300continues at block 308.

At block 308, it is determined if the browser content informationtargeted by the activated link is limited to one instance. For example,it may be determined if targeted browser content information 104 has anonly-one-instance property 216. If not, then flow diagram 300 continuesat block 314. As described herein above, targeted browser contentinformation 104 may be a page or any other type or kind of informationthat is displayable, accessible, and/or otherwise compatible with abrowser application 102.

Otherwise, at block 310 it is determined if a tab already exists for theinformation. For example, it may be determined if the targeted browsercontent information 104 already exists in another tab 208. If so, thenat block 312 the tab with the targeted information is moved to thefront. For example, if the targeted browser content information 104 islocated at tab 2 208(2), then browser application 102 may move tab 2208(2) to the front layer of content area 214. If, on the other hand,the targeted information does not already exist in another tab, thenflow diagram 300 continues at block 314.

At block 314, a new tab is opened. For example, browser application 102may create a new tab 208(n+1) (not shown) and locate it on top of othertabs 208(1 . . . n) within content area 214. At block 316, the targetedinformation is loaded into the new tab. For example, the targetedbrowser content information 104 may be retrieved from a network site 108or from media 118 and displayed within new tab 208(n+1) on displaydevice 112.

Browser applications 102 often track histories of the browser content104 that is accessed by users via the browser applications 102. Ahistory, depending on a user's order of requesting browser content 104,can be both forward and backward. The history is maintained or stored asa travelogue. For each item of browser content information 104, an entryis typically added to the travelogue.

FIG. 4(A) illustrates an approach to browser travelogues in a no tabscenario. Multiple pages 402 and multiple travelogues 404 are shown.Generally, each respective page 402 corresponds to a respectivetravelogue 404 as indicated by the connecting lines that are terminatedwith small circles. Specifically, five pages 402, which are designatedby the letters A-E are shown. Each respective page 402 A, B, C, D, and Ecorresponds to a respective travelogue 404.

In FIG. 4(A), no tabs 208 (of FIG. 2) are being employed by a browserapplication 102. Initially, in a described implementation, page A isloaded upon a new browser application window 202 being opened, and thecorresponding travelogue is empty. In a real-world situation, the page Atravelogue is empty with respect to historical entries; however, it mayinitially contain other data.

After a user requests a page B, page B is loaded into browserapplication 102. An entry directed to page A is added to the traveloguecorresponding to page B. The entry may, for example, include a pointerto page A. The pointer may be a target address, a location of a cachedversion of page A, and so forth. The entry may also include other datafor page A, such as data entered into a form by a user.

In the example scenario of FIG. 4(A), the user continues to progressforward by requesting pages C, D, and E. When page C is loaded, an entrydirected to page B is added to the travelogue corresponding to page C.When page D is loaded, an entry directed to page C is added to thetravelogue corresponding to page D. When page E is loaded, an entrydirected to page D is added to the travelogue corresponding to page E.If a user were to move backward from page E to page D, the traveloguecorresponding to page D then typically includes a forward entry directedto page E added thereto.

FIG. 4(B) illustrates an approach to browser travelogues in auser-created tab scenario. Initially, page A is loaded into a browserapplication window 202 by browser application 102 upon it being started,and the corresponding travelogue is empty. Page A may be a home page oranother initially-designated page. When page B is loaded in response toa user request, an entry directed to page A is added to the traveloguecorresponding to page B.

In the example scenario of FIG. 4(B), when a user requests that page Cbe retrieved and loaded, the user instructs that page C be loaded in anew tab 208. In this scenario, a new travelogue is created for the newtab 208. The new travelogue corresponding to page C in the new tab 208is empty. It does not include historical data from the old tab orhistorical data to identify the old tab. Consequently, the user cannotmove backward from the new tab 208 that holds page C to the old tab 208or otherwise to page B. (The user can, however, still manually switch tothe old tab 208 or otherwise manually input or elect to load page B intothe new tab 208.)

The user continues to progress forward by requesting pages D and E. Whenpage D is loaded, an entry directed to page C is added to the traveloguecorresponding to page D. When page E is loaded, an entry directed topage D is added to the travelogue corresponding to page E. Thus, thetravelogue corresponding to page E includes two entries: one directed topage D and another directed to page C.

Thus, a user is automatically empowered by browser application 102 toback up to page C within the new tab 208 using the travelogues 404.However, no additional backing up beyond page C is automatically enabledby browser application 102 in the scenario of FIG. 4(B).

To clarify, the illustrations of FIGS. 4(A) and 4(B) are not intended toindicate the simultaneous existence of separate travelogues 404corresponding to each and every one of the different pages 402. On thecontrary, the figures indicate a temporal progression of differentstates of one or two travelogues 404. For the scenario of FIG. 4(A),there is one travelogue 404 having five different states correspondingto pages A-E. For the scenario of FIG. 4(B), there are two travelogues404 that may simultaneously exist. There is a first travelogue 404 forthe old/original tab that has two different states corresponding topages A and B. There is also a second travelogue 404 for the new tabthat has three different states corresponding to pages C, D, and E.

FIG. 4(C) illustrates an approach to browser travelogues in anapplication-created tab scenario. In this scenario, browser application102 creates a new tab 208 without manual instruction from the user.Initially, page A is loaded by browser application 102 in an original orold tab, and the corresponding travelogue is empty of historicalentries. Page B is next requested by selecting a link 210, by manuallyinputting a known target address 212A, and so forth. When page B isloaded in the original/old tab, an entry directed to page A is added tothe travelogue corresponding to page B.

In the example scenario of FIG. 4(C), when a user requests that page Cbe retrieved and loaded, browser application 102 causes page C be loadedin a new tab 208, as indicated at 406. Browser application 102 may causepage C to be loaded into a new tab for any one or more of many possibletriggers. For example, a link 210 that is selected by the user and thattargets page C may include an open-in-new-tab indicator 212B in its linkproperties 212. This trigger is described herein above with particularreference to FIGS. 2 and 3. Alternatively, there may be other triggers.

After the new tab 208 is created as indicated at 406, page C is loadedin the new tab 208, and a new travelogue is initialized to correspond topage C. In this travelogue corresponding to page C, an entry directed topage B′ is added. The B′ historical entry differs from other historicalentries as described herein above with regard to FIGS. 4(A) and 4(B) asindicated by the apostrophe (′). The B′ historical entry, in addition topointing to page B, identifies the original/old tab from which the newtab is being spawned. This creates an association between the old taband the new tab. The identification of the old tab also empowers a userto back up to page B at the old tab.

The user continues to progress forward by requesting pages D and E. Whenpage D is loaded, an entry directed to page C is added to the traveloguecorresponding to page D. When page E is loaded, an entry directed topage D is added to the travelogue corresponding to page E. As a result,the travelogue corresponding to page E includes three entries: onedirected to page D, one directed to page C, and one directed to page B′(which also identifies the old tab).

Thus, in the example scenario of FIG. 4(C), a user is empowered to backup to a page and an original tab that spawned an associated new tab. Forexample, a user is viewing page C in the new tab 208 of a browserapplication window 202. The user instructs browser application 102 tomove backward. Browser application 102 references the traveloguecorresponding to page C at the new tab and extracts the next backwardentry. The next backward entry, B′, points to page B and identifies theassociated tab that spawned the new tab. This associated tab is theoriginal/old tab.

Browser application 102 therefore relocates the old tab 208 on top ofcontent area 214 of browser application window 202 as indicated at 408.This old tab displays page B. The travelogue for the old tab thatcorresponds to page B, in the example illustrated in FIG. 4(C), includesa backward entry directed to page A at the old tab.

In a described implementation, browser application 102 also closes thenew tab as indicated at 410. This optional action facilitates a morecomplete automatic management of tabs. It is especially applicable whenbrowser application 102 created the new tab without receiving aninstruction from the user. Alternatively, the new tab may be permittedto continue to exist (e.g., with page C ready for display).

Although not specifically illustrated for the sake of clarity, thetravelogue corresponding to page C can be equivalent to the illustratedtravelogue for page E in certain circumstances. In other words, the newtab travelogue corresponding to page C may include three entriesdirected to page D, page C, and page B′/old tab. (It may actually alsoinclude an entry directed to page E for forward movement purposes.) Thiscan occur, for example, after a user moves backward from page E to pageC (e.g., by activating a backward button twice). Consequently, a userwho has backed up to page C, instead of further backing up to page B atthe old tab, can elect to move forward to page D at the new tab.

In the example scenario of FIG. 4(B) as described herein above, a userhas actively requested that a page be opened in a new tab. In thatscenario, the travelogue for the new tab is initially empty. However,user-created new tabs may be treated similarly to the scenario of FIG.4(C). In other words, the travelogue for a user-created new tab can beinitialized to point to the spawning page of the old tab.

FIG. 5 is a flow diagram 500 that illustrates an example of a secondmethod for managing browser tabs. Flow diagram 500 includes twelve (12)blocks 502-518, including blocks 506A/B, 510A/B, 518A/B. Although theactions of flow diagram 500 may be performed in other environments andwith a variety of hardware and software combinations, FIGS. 1, 2, and4(C) are used in particular to illustrate certain aspects and examplesof the method.

At block 502, a user selects a link for a second page from a first pageat an original tab. For example, from page B (of FIG. 4(C)) at an oldtab 208(3) (of FIG. 2), a user may select a link 210 having a targetaddress 212A of page C.

In this example of FIG. 5, browser application 102 determines that a newtab is to be opened. This determination may be based on any trigger,including manual ones. By way of example only, the trigger may be amanual open-in-new-tab request by a user, an open-in-new-tab indicator212B link property 212 of the link 210 for page C, and so forth.

At block 504, the browser application launches a new tab for the secondpage. For example, browser application 102 may launch a new tab 208(n+1)(not shown) within browser application window 202 for page C asindicated at 406.

At block 506A, the second page is loaded into the new tab. For example,page C may be loaded into new tab 208(n+1) at the top layer of contentarea 214. At block 506B, a travelogue is established for the new tabwith the travelogue having an entry pointing to the first page at theoriginal tab. For example, a travelogue for new tab 208(n+1)corresponding to page C may be established with an entry pointing topage B and identifying the old tab 208(3).

At block 508, the user selects a link for a third page from the secondpage of the new tab. For example, from page C of the new tab 208(n+1), auser may select a link 210 having a target address 212A of page D.

At block 510A, the third page is loaded into the new tab. For example,page D may be loaded into new tab 208(n+1) in content area 214. At block510B, a backward entry pointing to the second page (at the new tab) isadded to the travelogue for the new tab. For example, the travelogueestablished for the new tab 208(n+1) and corresponding to page D mayhave added thereto an entry pointing to page C.

At block 512, the user performs a back operation. For example, the usermay instruct browser application 102 to perform a move backwardoperation with regard to the displayed browser content information. Atblock 514, the second page is reloaded at the new tab. For example,browser application 102 may reload page C into the new tab 208(n+1). Atblock 516, the user performs another back operation.

At block 518A, the browser application switches to the first page at theoriginal tab. For example, browser application 102 may switch the tabthat is on top of content area 214 to the old tab 208(3), which stillholds and displays page B, as indicated at 408. At block 518B, the newtab is closed. For example, browser application 102 may close new tab208(n+1), as indicated at 410. As noted above, new tab 208(n+1) mayalternatively be left open (e.g., as an underlying tab in content area214).

The devices, actions, aspects, features, functions, procedures, modules,data structures, components, etc. of FIGS. 1-5 are illustrated indiagrams that are divided into multiple blocks. However, the order,interconnections, interrelationships, layout, etc. in which FIGS. 1-5are described and/or shown are not intended to be construed as alimitation, and any number of the blocks can be modified, combined,rearranged, augmented, omitted, etc. in any manner to implement one ormore systems, methods, devices, procedures, media, apparatuses, APIs,arrangements, etc. for browser tab management.

Although systems, media, devices, methods, procedures, apparatuses,techniques, schemes, approaches, procedures, arrangements, and otherimplementations have been described in language specific to structural,logical, algorithmic, and functional features and/or diagrams, it is tobe understood that the invention defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

1. One or more computer-readable media comprising processor-executableinstructions that, when executed by at least one processor, direct adevice to perform actions comprising: receiving user input on a firstpage at a first tab in an browser to retrieve a second page; launching asecond tab for the second page in the browser; including a historicalentry pointing to the first page at the first tab in a travelogue forthe second tab; receiving user input on the browser to perform a backoperation for the second page; and switching to the first page at thefirst tab responsive to the user input to perform the back operation forthe second page, the switching being performed responsive to thehistorical entry pointing to the first page at the first tab.
 2. The oneor more computer-readable media as recited in claim 1, furthercomprising: receiving user input on the second page at the second tab inan browser to retrieve a third page; launching a third tab for the thirdpage in the browser; and including a historical entry pointing to thesecond page at the second tab in a travelogue for the third tab.
 3. Theone or more computer-readable media as recited in claim 2, furthercomprising: receiving user input on the browser to perform a backoperation for the third page; and switching to the second page at thesecond tab responsive to the user input to perform the back operationfor the third page, the switching being performed responsive to thehistorical entry pointing to the second page at the second tab.
 4. Theone or more computer-readable media as recited in claim 2, furthercomprising: including a historical entry pointing to the third page atthe third tab in a travelogue for the second tab.
 5. The one or morecomputer-readable media as recited in claim 1, the launching beingperformed responsive to a manual user request for the second tab.
 6. Theone or more computer-readable media as recited in claim 1, the launchingbeing performed responsive to an open-in-new-tab indicator link propertyfor a selected link.
 7. One or more computer-readable media comprisingprocessor-executable instructions that, when executed by at least oneprocessor, direct a device to perform actions comprising: receiving userinput on a first page at a first tab in an browser to retrieve a secondpage; launching a second tab for the second page in the browser;including a historical entry pointing to the first page at the first tabin a travelogue for the second tab; receiving user input on the browserto perform a back operation for the second page; and closing the secondtab responsive to the user input to perform the back operation from thesecond page.
 8. The one or more computer-readable media as recited inclaim 7, further comprising: receiving user input on the second page atthe second tab in the browser to retrieve a third page; launching athird tab for the third page in the browser; and including a historicalentry pointing to the second page at the second tab in a travelogue forthe third tab.
 9. The one or more computer-readable media as recited inclaim 8, further comprising: receiving user input on the browser toperform a back operation for the third page; and closing the third tabresponsive to the user input to perform the back operation from thethird page.
 10. The one or more computer-readable media as recited inclaim 7, wherein the launching is performed responsive to a manual userrequest for the second tab.
 11. The one or more computer-readable mediaas recited in claim 7, wherein the launching is performed responsive toan open-in-new-tab indicator link property for a selected link.
 12. Oneor more computer-readable media comprising processor-executableinstructions that, when executed by at least one processor, direct adevice to perform actions comprising: launching a first tab for a firstpage in an browser; launching a second tab for a second page in thebrowser when receiving a user input to the first page; launching a thirdtab for a third page in the browser when receiving a user input to thesecond page; closing the third tab when a back operation is executed onthe browser from the third page; and launching the third tab for thethird page in the browser when a forward operation is executed on thebrowser from the second page.
 13. The one or more computer-readablemedia as recited in claim 12, further comprising: creating a historicalentry pointing to the second page at the second tab in a travelogue forthe first tab.
 14. The one or more computer-readable media as recited inclaim 12, further comprising: creating a historical entry pointing tothe third page at the third tab in a travelogue for the second tab. 15.The one or more computer-readable media as recited in claim 14, thelaunching the third tab for the third page when a forward operation isexecuted on the browser being performed responsive to the historicalentry in the travelogue for the second tab.
 16. The one or morecomputer-readable media as recited in claim 12, the launching of thesecond tab being performed responsive to a manual user request for thesecond tab.
 17. The one or more computer-readable media as recited inclaim 12, the launching of the second tab being performed responsive toan open-in-new-tab indicator link property for a selected link.
 18. Theone or more computer-readable media as recited in claim 12, wherein thelaunching of the third tab is performed responsive to a manual userrequest for the second tab.
 19. The one or more computer-readable mediaas recited in claim 12, wherein the launching of the third tab isperformed responsive to an open-in-new-tab indicator link property for aselected link.
 20. The one or more computer-readable media as recited inclaim 12, wherein the launching of the first tab is performed responsiveto a manual user request.